home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / graphic / vgamaze4.zip / VGAMAZE.DOC < prev    next >
Text File  |  1994-02-27  |  3KB  |  67 lines

  1.                                                       February 27, 1994
  2.  
  3.      Display mazes in three dimensions on your VGA monitor.
  4.  
  5.      To display a maze with hexagonal rooms, issue the command "HEXAGON".
  6. You will be prompted for an 8 (or fewer) character random number seed.  In
  7. general, a different random number seed will produce a different maze.
  8. After the maze is displayed, press S to see the solution.  Then press
  9. (almost) any key to exit.  A VGA (or SVGA) graphics card, a VGA (or better)
  10. monitor, and about 2 megabytes of expanded memory or disk space are needed
  11. (for virtual memory).
  12.  
  13.      SQUARE.EXE works like HEXAGON.EXE except that it yields mazes with
  14. square rooms.
  15.  
  16.      All of the Borland C++ 3.0 source code is supplied (with comments).  If
  17. you compile it, use the "large" model.  Because VGA3D.CPP uses it, main programs
  18. must be linked with Borland's GRAPHICS.LIB.  See the Borland documentation on
  19. the utilities BINOBJ and TLIB for information on including EGAVGA.BGI in
  20. GRAPHICS.LIB.
  21.  
  22.      The following pieces of source code are specific to maze generation:
  23.  
  24.           CELL.* -- Each instance of this class represents a room in a maze.
  25.  
  26.           HEXMAZE.* -- each instance of this class is a maze having hexagonal
  27.             rooms.
  28.  
  29.           HEXAGON.CPP -- the source for HEXAGON.EXE.
  30.  
  31.           SQRMAZE.* -- each instance of this class is a maze having square
  32.             rooms.
  33.  
  34.           SQUARE.CPP -- the source for SQUARE.EXE.
  35.  
  36.      The following pieces may find application in other programs:
  37.  
  38.           ORACLE.* -- Each object derived from this class is a random number
  39.             generator.  "random_number()" returns integers uniformly distributed
  40.             between 0 and max_r_n_plus_1-1.
  41.  
  42.           VARRAY.H -- a template for one dimensional virtual arrays; you can
  43.             use expanded memory (or if expanded memory is not available) disk
  44.             space to break the 640K limit in DOS.
  45.  
  46.           TITILLAT.* -- an instance of this class displays a rotating bar to
  47.             let a user know a calculation intensive program is running.
  48.  
  49.           PLOT3D.* -- an abstract class.  Classes derived from this class may be
  50.             used to instantiate objects that will plot z=f(x,y) in three
  51.             dimensions.  The derived classes must supply the functions
  52.             "aspect_ratio", "display_initialize", "pset", "num_x_pixels",
  53.             "num_y_pixels", and "write_outfile".
  54.  
  55.           VGA3D.* -- a class derived from PLOT3D.  It plots z=f(x,y) in three
  56.             dimensions on VGA displays.
  57.  
  58.      SPIKE.CPP demonstrates using VARRAY.H, TITILLAT.*, PLOT3D.*, and VGA3D.*
  59. to plot a simple mathematical function; SPIKE.EXE is the corresponding
  60. executable code.
  61.  
  62.      I am the author of all the code in this package.  It may be freely
  63. distributed.
  64.  
  65.                                                    -- James L. Dean
  66.                                                       csvcjld@nomvs.lsumc.edu
  67.